package algorithmTopics.array;

public class test5 {

    public static void main(String[] args) {
        test5 test5 = new test5();
        System.out.println(test5.singleNumber(new int[]{2,2,1}));
    }

    public int singleNumber(int[] nums) {
        int ans = 0 ;
        for (int i = 0; i < nums.length; i++) {
            ans ^= nums[i];
        }
        return ans;
    }

//    public int singleNumber(int[] nums) {
//        if (nums.length == 1) {
//            return nums[0];
//        }
//        Arrays.sort(nums);
//        int ans = 0;
//        if (nums[0] != nums[1]) {
//            return ans = nums[0];
//        }
//        if (nums[nums.length -1] != nums[nums.length - 2]) {
//            return ans = nums[nums.length - 1];
//        }
//
//        for (int i = 0; i < nums.length - 2 ; i++) {
//            if (nums[i] != nums[i + 1]) {
//                if (nums[i + 1] != nums[i + 2]) {
//                    return ans = nums[i + 1];
//                }
//            }
//
//        }
//        return ans;
//    }
}
